+Mon Feb 12 23:43:30 2001 Owen Taylor <otaylor@redhat.com>
+
+ * gtk/Makefile.am (gdk_headers): Remove gdkcc.h
+ reference.
+
+ * configure.in gtk/gtkmain.c: Add checks for setuid/setgid,
+ and refuse to initialize GTK+ if they fail.
+
+Mon Feb 12 15:02:07 2001 Owen Taylor <otaylor@redhat.com>
+
+ * configure.in: Add check for gtk-doc version.
+
+Thu Feb 8 17:18:26 2001 Owen Taylor <otaylor@redhat.com>
+
+ * gtk/gtklabel.c (gtk_label_size_request): Fix bug
+ where the xpad/ypad was only being used on one side!
+
2001-02-11 Tor Lillqvist <tml@iki.fi>
* gdk/win32/gdkcolor-win32.c (gdk_colormap_query_color): New
+Mon Feb 12 23:43:30 2001 Owen Taylor <otaylor@redhat.com>
+
+ * gtk/Makefile.am (gdk_headers): Remove gdkcc.h
+ reference.
+
+ * configure.in gtk/gtkmain.c: Add checks for setuid/setgid,
+ and refuse to initialize GTK+ if they fail.
+
+Mon Feb 12 15:02:07 2001 Owen Taylor <otaylor@redhat.com>
+
+ * configure.in: Add check for gtk-doc version.
+
+Thu Feb 8 17:18:26 2001 Owen Taylor <otaylor@redhat.com>
+
+ * gtk/gtklabel.c (gtk_label_size_request): Fix bug
+ where the xpad/ypad was only being used on one side!
+
2001-02-11 Tor Lillqvist <tml@iki.fi>
* gdk/win32/gdkcolor-win32.c (gdk_colormap_query_color): New
+Mon Feb 12 23:43:30 2001 Owen Taylor <otaylor@redhat.com>
+
+ * gtk/Makefile.am (gdk_headers): Remove gdkcc.h
+ reference.
+
+ * configure.in gtk/gtkmain.c: Add checks for setuid/setgid,
+ and refuse to initialize GTK+ if they fail.
+
+Mon Feb 12 15:02:07 2001 Owen Taylor <otaylor@redhat.com>
+
+ * configure.in: Add check for gtk-doc version.
+
+Thu Feb 8 17:18:26 2001 Owen Taylor <otaylor@redhat.com>
+
+ * gtk/gtklabel.c (gtk_label_size_request): Fix bug
+ where the xpad/ypad was only being used on one side!
+
2001-02-11 Tor Lillqvist <tml@iki.fi>
* gdk/win32/gdkcolor-win32.c (gdk_colormap_query_color): New
+Mon Feb 12 23:43:30 2001 Owen Taylor <otaylor@redhat.com>
+
+ * gtk/Makefile.am (gdk_headers): Remove gdkcc.h
+ reference.
+
+ * configure.in gtk/gtkmain.c: Add checks for setuid/setgid,
+ and refuse to initialize GTK+ if they fail.
+
+Mon Feb 12 15:02:07 2001 Owen Taylor <otaylor@redhat.com>
+
+ * configure.in: Add check for gtk-doc version.
+
+Thu Feb 8 17:18:26 2001 Owen Taylor <otaylor@redhat.com>
+
+ * gtk/gtklabel.c (gtk_label_size_request): Fix bug
+ where the xpad/ypad was only being used on one side!
+
2001-02-11 Tor Lillqvist <tml@iki.fi>
* gdk/win32/gdkcolor-win32.c (gdk_colormap_query_color): New
+Mon Feb 12 23:43:30 2001 Owen Taylor <otaylor@redhat.com>
+
+ * gtk/Makefile.am (gdk_headers): Remove gdkcc.h
+ reference.
+
+ * configure.in gtk/gtkmain.c: Add checks for setuid/setgid,
+ and refuse to initialize GTK+ if they fail.
+
+Mon Feb 12 15:02:07 2001 Owen Taylor <otaylor@redhat.com>
+
+ * configure.in: Add check for gtk-doc version.
+
+Thu Feb 8 17:18:26 2001 Owen Taylor <otaylor@redhat.com>
+
+ * gtk/gtklabel.c (gtk_label_size_request): Fix bug
+ where the xpad/ypad was only being used on one side!
+
2001-02-11 Tor Lillqvist <tml@iki.fi>
* gdk/win32/gdkcolor-win32.c (gdk_colormap_query_color): New
+Mon Feb 12 23:43:30 2001 Owen Taylor <otaylor@redhat.com>
+
+ * gtk/Makefile.am (gdk_headers): Remove gdkcc.h
+ reference.
+
+ * configure.in gtk/gtkmain.c: Add checks for setuid/setgid,
+ and refuse to initialize GTK+ if they fail.
+
+Mon Feb 12 15:02:07 2001 Owen Taylor <otaylor@redhat.com>
+
+ * configure.in: Add check for gtk-doc version.
+
+Thu Feb 8 17:18:26 2001 Owen Taylor <otaylor@redhat.com>
+
+ * gtk/gtklabel.c (gtk_label_size_request): Fix bug
+ where the xpad/ypad was only being used on one side!
+
2001-02-11 Tor Lillqvist <tml@iki.fi>
* gdk/win32/gdkcolor-win32.c (gdk_colormap_query_color): New
+Mon Feb 12 23:43:30 2001 Owen Taylor <otaylor@redhat.com>
+
+ * gtk/Makefile.am (gdk_headers): Remove gdkcc.h
+ reference.
+
+ * configure.in gtk/gtkmain.c: Add checks for setuid/setgid,
+ and refuse to initialize GTK+ if they fail.
+
+Mon Feb 12 15:02:07 2001 Owen Taylor <otaylor@redhat.com>
+
+ * configure.in: Add check for gtk-doc version.
+
+Thu Feb 8 17:18:26 2001 Owen Taylor <otaylor@redhat.com>
+
+ * gtk/gtklabel.c (gtk_label_size_request): Fix bug
+ where the xpad/ypad was only being used on one side!
+
2001-02-11 Tor Lillqvist <tml@iki.fi>
* gdk/win32/gdkcolor-win32.c (gdk_colormap_query_color): New
AC_TYPE_SIGNAL
AC_FUNC_MMAP
+AC_CHECK_FUNCS(getresuid)
+AC_TYPE_UID_T
+
# Check if <sys/select.h> needs to be included for fd_set
AC_MSG_CHECKING([for fd_set])
AC_TRY_COMPILE([#include <sys/types.h>],
AC_SUBST(HTML_DIR)
AC_CHECK_PROG(GTKDOC, gtkdoc-mkdb, true, false)
+
+gtk_doc_min_version=0.6
+if $GTKDOC ; then
+ gtk_doc_version=`gtkdoc-mkdb --version`
+ AC_MSG_CHECKING([gtk-doc version ($gtk_doc_version) >= $gtk_doc_min_version])
+ if perl <<EOF ; then
+ exit (("$gtk_doc_version" =~ /^[[0-9]]+\.[[0-9]]+$/) &&
+ ("$gtk_doc_version" >= "$gtk_doc_min_version") ? 0 : 1);
+EOF
+ AC_MSG_RESULT(yes)
+ else
+ AC_MSG_RESULT(no)
+ GTKDOC=false
+ fi
+fi
+
AM_CONDITIONAL(HAVE_GTK_DOC, $GTKDOC)
AC_SUBST(HAVE_GTK_DOC)
@STRIP_END@
# Extra headers that are used for enum type array/id generation
gdk_headers = @STRIP_BEGIN@ \
- ../gdk/gdkcc.h \
../gdk/gdkcolor.h \
../gdk/gdkcursor.h \
../gdk/gdkdnd.h \
* don't think it's really that slow.
*/
- requisition->width = label->misc.xpad;
- requisition->height = label->misc.ypad;
+ requisition->width = label->misc.xpad * 2;
+ requisition->height = label->misc.ypad * 2;
if (!label->layout)
{
#undef gtk_init_check
+/* This checks to see if the process is running suid or sgid
+ * at the current time. If so, we don't allow GTK+ to be initialized.
+ * This is meant to be a mild check - we only error out if we
+ * can prove the programmer is doing something wrong, not if
+ * they could be doing something wrong. For this reason, we
+ * don't use issetugid() on BSD or prctl (PR_GET_DUMPABLE).
+ */
+static gboolean
+check_setugid (void)
+{
+ uid_t ruid, euid, suid; /* Real, effective and saved user ID's */
+ gid_t rgid, egid, sgid; /* Real, effective and saved group ID's */
+
+#ifdef HAVE_GETRESUID
+ /* These aren't in the header files, so we prototype them here.
+ */
+ int getresuid(uid_t *ruid, uid_t *euid, uid_t *suid);
+ int getresgid(gid_t *rgid, gid_t *egid, gid_t *sgid);
+
+ if (getresuid (&ruid, &euid, &suid) != 0 ||
+ getresgid (&rgid, &egid, &sgid) != 0)
+#endif /* HAVE_GETRESUID */
+ {
+ suid = ruid = getuid ();
+ sgid = rgid = getgid ();
+ euid = geteuid ();
+ egid = getegid ();
+ }
+
+ if (ruid != euid || ruid != suid ||
+ rgid != egid || rgid != sgid)
+ {
+ g_warning ("This process is currently running setuid or setgid.\n"
+ "This is not a supported use of GTK+. You must create a helper\n"
+ "program instead. For further details, see:\n\n"
+ " http://www.gtk.org/setuid.html\n\n"
+ "Refusing to initialize GTK+.");
+ exit (1);
+ }
+
+ return TRUE;
+}
+
gboolean
gtk_init_check (int *argc,
char ***argv)
if (gtk_initialized)
return TRUE;
+ if (!check_setugid ())
+ return FALSE;
+
#if 0
g_set_error_handler (gtk_error);
g_set_warning_handler (gtk_warning);